#include"reverse_iterator.h"
#include"list.h"
#include"vector.h"
//
//class Solution1 {
//public:
//    void reverseString(vector<char>& s) {
//        int left = 0;
//        int right = s.size() - 1;
//
//        while (left < right)
//        {
//            char tmp = s[left];
//            s[left] = s[right];
//            s[right] = tmp;
//            left++;
//            right--;
//        }
//    }
//};
//
//class Solution2 {
//public:
//
//    void reverse(string& s, int left, int right)
//    {
//        while (left < right)
//        {
//            char tmp = s[left];
//            s[left] = s[right];
//            s[right] = tmp;
//            left++;
//            right--;
//        }
//    }
//    string reverseStr(string s, int k) {
//        int begin = 0;
//        int end = s.size() - 1;
//
//        while (begin < end)
//        {
//            reverse(s, begin, min(begin + k - 1, end));
//            begin += 2 * k;
//        }
//        return s;
//    }
//};
//
//class Solution3 {
//public:
//    string replaceSpace(string s) {
//        string ans;
//        for (int i = 0; i < s.size(); i++)
//        {
//            if (s[i] != ' ')
//            {
//                ans += s[i];
//            }
//            else
//            {
//                ans += "%20";
//            }
//        }
//
//        return ans;
//    }
//};
//
//class Solution4 {
//public:
//    void EraseExtraSpace(string& s)
//    {
//        int fast = 0, slow = 0;
//        int size = s.size();
//        while (fast < size)
//        {
//            if (s[fast] == ' ')
//            {
//                while (fast < size && s[fast] == ' ')
//                {
//                    fast++;
//                } 
//                if (slow != 0 && fast != size - 1)
//                {
//                    s[slow++] = ' ';
//                }
//            }
//            else
//            {
//              
//                s[slow++] = s[fast++];
//            }
//        }
//        s.resize(slow-1);
//    }
//    string reverseWords(string s) {
//        EraseExtraSpace(s);
//        reverse(s.begin(), s.end());
//        int start = 0;
//        for (size_t i = 0; i <= s.size(); i++)
//        {
//            if (i == s.size() || s[i] == ' ')
//            {
//                reverse(s.begin() + start, s.begin() + i);
//                start = i + 1;
//            }
//        }
//        return s;
//    }
//};
//
//void test1()
//{
//    string s("  Hello World  ");
//    Solution4().reverseWords(s);
//}
//
//class Solution5 {
//public:
//    string reverseLeftWords(string s, int n) {
//        reverse(s.begin(), s.begin() + n);
//        reverse(s.begin() + n, s.end());
//        reverse(s.begin(), s.end());
//        return s;
//    }
//};




void test2()
{
	ww::test_list1();
}

int main()
{
	test2();

	return 0;
}